//处理token

//导入jwt
const jwt = require('jsonwebtoken');

//创建签名
const key_0907 = "XA0907";

//定义一个生产token的函数
//module.exports 导出
function createToken(data,expiresIn="7d"){
//    expiresIn = expiresIn || '7d'; //等效于 参数默认值为 "7d"
   return jwt.sign(data,key_0907,{expiresIn});
}


//定义一个验证token函数
function verifyToken(token){
    return new Promise((resolve,reject)=>{
        jwt.verify(token,key_0907,(err,data)=>{
            if(err){
                // token验证失败
                // console.log('token过期或者非法');
                reject(err);
            }else{
                //token验证成功
                // console.log('数据',data);
                resolve(data)
            }
        })
    });
}


module.exports = {
    createToken,
    verifyToken
}



//测试代码
//  let tokenVal = createToken({name:"laowang"});

//  console.log(tokenVal);

// let p = verifyToken(tokenVal); 
// console.log(p);